home *** CD-ROM | disk | FTP | other *** search
Text File | 1998-08-21 | 44.4 KB | 1,585 lines |
- Opis system≤w NIS(YP)/NYS/NIS+ na Linux-ie.
- Autor:Thorsten Kukuk kukuk@vt.uni-paderborn.de
- v0.12, 12 Czerwca 1998
- Wersja polska: Bartosz Maruszewski B.Maruszewski@jtz.org.pl
- v2.0, 14 Sierpnia 1998
-
-
- klient NIS(YP) czy NIS+ oraz jako serwer. Dokument ten zosta│ napisany
- w standardzie ISO-8859-2.
- ______________________________________________________________________
-
- Table of Contents
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1. Wprowadzenie.
-
- 1.1 Nowe wersje tego dokumentu.
- 1.2 Zrzeczenie.
- 1.3 Komentarze i poprawki.
- 1.4 PodziΩkowania.
- 1.5 Od t│umacza.
-
- 2. S│owniczek i informacje og≤lne.
-
- 2.1 S│owniczek termin≤w.
- 2.2 TrochΩ og≤lnych informacji.
-
- 3. NIS czy NIS+ ?
-
- 3.1 libc 4/5 z tradycyjnym NIS czy NYS ?
-
- 4. Jak to dzia│a.
-
- 4.1 Jak dzia│a NIS(YP).
- 4.2 Jak dzia│a NIS+.
-
- 5. Portmapper RPC
-
- 6. Czego potrzebujesz, aby ustawiµ NIS?
-
- 6.1 Sprawd╝ czy jeste╢ serwerem, serwerem slave czy klientem.
- 6.2 Oprogramowanie.
- 6.3 Demon ypbind.
- 6.4 Ustawianie kilenta NIS przy u┐yciu Tradycyjnego NIS-a.
- 6.5 Ustawianie klienta NIS u┐ywaj▒c NYS.
- 6.6 Ustawianie klienta NIS u┐ywaj▒c glibc 2.x
- 6.7 Plik nsswitch.conf
-
- 7. Shadow Passwords z NIS i PAM.
-
- 8. Czego potrzebujesz do ustawienia NIS+?
-
- 8.1 Oprogramowanie.
- 8.2 Ustawianie klienta NIS+.
- 8.3 NIS+, keylogin, login i PAM.
- 8.4 Plik nsswitch.conf.
-
- 9. Ustawianie serwera NIS.
-
- 9.1 Program ypserv.
- 9.2 Program serwera yps.
- 9.3 Program rpc.yppasswdd
-
- 10. Weryfikacja instalacji NIS/NYS.
-
- 11. Popularne problemy i rozwi▒zywanie ich.
-
- 12. CzΩsto zadawane pytania.
-
-
-
- ______________________________________________________________________
-
- 1. Wprowadzenie.
-
-
- Coraz wiΩcej komputer≤w z Linux-em instalowanych jest jako czΩ╢µ sieci
- komputerowych. Aby upro╢ciµ administracjΩ sieci▒ wiΩkszo╢µ sieci
- (g│≤wnie oparte na Sun-ach) posiada Network Information Service.
- Maszyny Linux-owe mog▒ w pe│ni korzystaµ z serwera NIS albo samemu
- dostarczaµ tak▒ us│ugΩ. Linux mo┐e tak┐e dzia│aµ jako pe│ny klient
- NIS+, obs│uga tego jest jeszcze w fazie beta.
-
- Dokument ten pr≤buje odpowiedzieµ na pytania dotycz▒ce ustawienia
- NIS(YP) i NIS+ na twoim komputerze. Nie zapomnij przeczytaµ sekcji na
- temat ``Portmapper-a RPC''.
-
- NIS-HOWTO zajmuje siΩ
-
-
- Thorsten Kukuk, kukuk@vt.uni-paderborn.de
-
-
- Pierwotnym ╝r≤d│em informacji dla pierwszej wersji NIS-HOWTO byli:
-
-
-
- Andrea Dell'Amico <adellam@ZIA.ms.it>
- Mitchum DSouza <Mitch.DSouza@NetComm.IE>
- Erwin Embsen <erwin@nioz.nl>
- Peter Eriksson <peter@ifm.liu.se>
-
-
-
-
- kt≤rym powinni╢my podziΩkowaµ za napisanie pierwszych wersji tego
- dokumentu.
-
-
- 1.1. Nowe wersje tego dokumentu.
-
-
-
- Najnowsz▒ wersjΩ tego dokumentu mo┐esz zawsze znale╝µ pod adresem
- http://sunsite.icm.edu.pl:/pub/Linux/Documentation/HOWTO/.
-
- Najnowsze wersje bΩd▒ tak┐e umieszczane na r≤┐nych serwerach WWW i FTP
- zwi▒zanych z Linux-em w│▒cznie ze stron▒ LDP.
-
- Odno╢niki do t│umacze± tego dokumentu mo┐na znale╝µ pod adresem
- http://www-vt.uni-paderborn.de/~kukuk/linux/nis-howto.html.
-
-
- 1.2. Zrzeczenie.
-
-
- Pomimo, i┐ dokument ten powsta│ w jak najlepszej intencji mo┐e i
- pewnie zawiera b│Ωdy. Czytaj proszΩ wszystkie pliki README znajduj▒ce
- siΩ wraz z oprogramowaniem wymienianym tutaj w celu uzyskania jak
- naj╢wie┐szych informacji. BΩdziemy sie starali aby by│o tu jak
- najmniej b│Ωd≤w.
-
-
- 1.3. Komentarze i poprawki.
-
-
- Je╢li masz jakie╢ pytania czy poprawki dotycz▒ce tego dokumentu, pisz
- ╢mia│o do Thorstena Kukuk na adres kukuk@vt.uni-paderborn.de.
- PrzyjmujΩ wszelkie sugestie czy krytykΩ. Je╢li znajdziesz jaki╢ b│▒d
- daj mi znaµ proszΩ, ┐ebym m≤g│ go poprawiµ w nastΩpnej wersji. DziΩki.
-
- ProszΩ nie przysy│aj mi pyta± na temat problem≤w dotycz▒cych twojej
- dystrybucji Linux-a. Nie znam ka┐dej dystrybucji. Ale bΩdΩ siΩ stara│
- dodaµ ka┐de rozwi▒zanie jaki mi przy╢lecie.
-
-
- 1.4. PodziΩkowania.
-
-
- Chcieliby╢my podziΩkowaµ wszystkim ludziom, kt≤rzy przyczynili siΩ w
- jaki╢ spos≤b do powstania i rozwoju tego dokumentu. W porz▒dku
- alfabetycznym:
-
-
-
-
- Byron A Jeff <byron@cc.gatech.edu>
- Miquel van Smoorenburg <miquels@cistron.nl>
-
-
-
-
- Theo de Raadt <deraadt@theos.com> jest odpowiedzialny za oryginalny
- kod yp-klienta. Swen Thuemmler <swen@uni-paderborn.de> przeni≤s│ ten
- kod na Linux-a jak r≤wnie┐ procedury yp do biblioteki libc (znowu na
- podstawie pracy Theo). Thorsten Kukuk napisa│ od zera procedury
- NIS(YP) i NIS+ dla GNU libc 2.x.
-
-
- 1.5. Od t│umacza.
-
-
- T│umaczenie to jest chronione prawami autorskimi (C) Bartosza
- Maruszewskiego. Dozwolone jest rozprowadzanie i dystrybucja na
- prawach takich samych jak dokument oryginalny.
-
- Je╢li znalaz│e╢ jakie╢ ra┐▒ce b│Ωdy ortograficzne, gramatyczne,
- sk│adniowe, techniczne to pisz do mnie. Zaznaczam, ┐e nie jestem
- bieg│y w terminologii kryptografii wiΩc wystepuj▒ tu pewnie jakie╢
- dziwne wyra┐enia, kt≤re powinienem zapisaµ inaczej. Je╢li wiesz jak to
- ma brzmieµ, napisz;
-
- B.Maruszewski@jtz.org.pl
-
- Oficjaln▒ stron▒ t│umacze± HOWTO jest http://www.jtz.org.pl/
-
- Aktualne wersje przet│umaczonych dokument≤w znajduj▒ siΩ na tej┐e
- stronie. DostΩpne s▒ tak┐e poprzez anonimowe ftp pod adresem
- ftp.jtz.org.pl w katalogu /JTZ/.
-
- Przet│umaczone przeze mnie dokumenty znajduj▒ siΩ tak┐e na mojej
- stronie WWW. <http://www.jtz.org.pl/bartek/tlumaczenie.html> S▒ tam
- te┐ odwo│ania do Polskiej Strony T│umaczeniowej.
-
- Kontakt z nasz▒ grup▒, grup▒ t│umaczy mo┐esz uzyskaµ poprzez listΩ
- dyskusyjn▒ jtz@ippt.gov.pl. Je╢li chcesz sie na ni▒ zapisaµ, to wy╢lij
- list o tre╢ci subscribe jtz ImiΩ Nazwisko na adres
- majordomo@ippt.gov.pl
-
- Zmiany w tym dokumencie wprowadzone przez t│umacza to odwo│ania do
- polskich serwer≤w ftp.
-
-
- 2. S│owniczek i informacje og≤lne.
-
-
-
- 2.1. S│owniczek termin≤w.
-
-
- W dokumencie tym wystΩpuje wiele akronim≤w. Oto te najwa┐niejsze i
- kr≤tkie wyja╢nienie:
- DBM
- DataBase Management - biblioteka funkcji, kt≤re obs│uguj▒ pary z
- kluczem (-key-content) w bazie danych.
-
-
- DLL
- Dynamically Linked Library - biblioteka do│▒czana do
- wykonywalnego programu podczas jego dzia│ania.
-
-
- domainname
- "Nazwa-klucz", kt≤ra jest u┐ywana przez klient≤w NIS, aby
- zlokalizowaµ pasuj▒cy serwer NIS, kt≤ry udostepnia klucz dla
- domeny (domainname key). Zauwa┐ proszΩ, ┐e to nie koniecznie ma
- co╢ wsp≤lnego z domen▒ DNS-ow▒ (nazw▒ maszyny).
-
-
- FTP
- File Transfer Protocol - protok≤│ u┐ywany do przenoszenia plik≤w
- pomiΩdzy komputerami.
-
-
- libnsl
- Name services library - biblioteka odwo│a± "name service"
- (getpwnam, getservbyname itp.) na unix-ach SVR4. GNU libc u┐ywa
- tego do funkcji NIS (YP) i NIS+.
-
-
- libsocket
- Socket services library - biblioteka odwo│a± obs│ugi gniazdek
- (socket, bind, listen itp.) na unix-ach SVR4.
-
-
- NIS
- Network Information Service - serwis kt≤ry udostΩpnia
- informacjΩ, kt≤ra musi byµ znana poprzez sieµ dla wszystkich
- maszyn w sieci. W standardowej bibliotece Linux-a - libc - jest
- obs│uga dla NIS, kt≤ra dalej zwana jest "tradycyjnym NIS-em".
-
-
- NIS+
- Network Information Service (Plus :-) - w│a╢ciwie to taki NIS na
- sterydach. NIS+ zosta│ zaprojektowany przez Sun Microsystems
- Inc. jako zastΩpca NIS-a z lepszym bezpiecze±stwem i lepsz▒
- obs│ug▒ _wielkich_ instalacji.
-
-
- NYS
- Jest to nazwa projektu, kt≤ry powsta│ z NIS+, YP i Switch i
- zarz▒dzany jest przez Petera Erikssona <peter@ifm.liu.se>.
- MiΩdzy innymi zawiera powt≤rn▒ implementacjΩ kodu NIS-a (=YP),
- kt≤ra u┐ywa funkcjonalno╢ci Name Service Switch biblioteki NYS.
-
-
- NSS
- Name Service Switch. Plik /etc/nsswitch.conf okre╢la kolejno╢µ,
- w jakiej sprawdza siΩ pewne ┐▒dane informacje.
-
-
- RPC
- Remote Procedure Call. Procedury RPC pozwalaj▒ programom w C
- odwo│ywaµ siΩ do procedur na odleg│ej maszynie poprzez sieµ.
- Kiedy ludzie m≤wi▒ o RPC to najczΩ╢ciej maj▒ na my╢li wariant
- Sun-a RPC.
-
-
- YP Yellow Pages(TM) - zarejestrowany znak towarowy w UK firmy
- British Telecom plc.
-
-
- TCP-IP
- Transmission Control Protocol/Internet Protocol. To protok≤│
- komunikacji danych najczΩ╢ciej u┐ywany na maszynach unix-owych.
-
-
- 2.2. TrochΩ og≤lnych informacji.
-
-
- NastΩpuj▒ce 3 linijki to cytat z podrΩcznika Sun(TM) System & Network
- Administration Manual:
-
-
-
- "NIS znany by│ wcze╢niej jako Sun Yellow Pages (YP), ale nazwa Yellow
- Pages(TM) jest zarejestrowanym znakiem towarowym w Zjednoczonym
- Kr≤lestwie firmy British Telecom plc i nie mo┐e byµ u┐ywana bez zgody."
-
-
-
-
- NIS to skr≤t od Network Information Service. Celem jego jest
- dostarczanie informacji, kt≤ra musi byµ znana na sieci dla wszystkich
- komputer≤w. Informacja, kt≤ra najprawdopodobniej bΩdzie dystrybuowana
- to:
-
-
- ╖ login/has│a/katalogi domowe (/etc/passwd)
-
- ╖ informacje o grupach (/etc/group)
-
- Tak wiΩc na przyk│ad je╢li informacja o twoim ha╢le jest zapisana w
- bazie hase│ NIS, bΩdziesz m≤g│ siΩ zalogowaµ na wszystkich maszynach
- na sieci, kt≤re maj▒ uruchomionego klienta NIS.
-
- Sun jest znakiem towarowym Sun Microsystems, Inc. licencjonowane dla
- SunSoft, Inc.
-
-
- 3. NIS czy NIS+ ?
-
-
- Wyb≤r miΩdzy NIS a NIS+ jest prosty - u┐yj NIS-a je╢li nie musisz
- u┐ywaµ NIS+ czy nie musisz stosowaµ zaostrzonego bezpiecze±stwa. Z
- NIS+ jest _o wiele_ wiΩcej k│opot≤w je╢li chodzi o administracjΩ (jest
- nim ca│kiem │atwo zarz▒dzaµ od strony klienta, ale serwer to horror).
- Innym problemem jest fakt, ┐e wsparcie dla NIS+ w Linux-ie jest ci▒gle
- w fazie rozwoju - potrzebujesz najnowszej biblioteki glibc, albo
- musisz poczekaµ na glibc 2.1. Istnieje wersja zastΩpcza glibc z
- obs│ug▒ NIS+ dla libc5.
-
-
- 3.1. libc 4/5 z tradycyjnym NIS czy NYS ?
-
-
- Wyb≤r pomiΩdzy "tradycyjnym NIS" czy kodem NIS w bibliotece NYS jest
- wyborem pomiΩdzy lenistwem i rozwojem a elastyczno╢ci▒ i zami│owaniem
- do przygody.
-
- Kod "tradycjnego NIS" jest w standardowej bibliotece C i istnieje ju┐
- d│ugo i czasem cierpi z powodu swojego wieku i ma│ej nieelastyczno╢ci.
-
-
- Kod NIS w bibliotece NYS wymaga rekompilacji biblioteki libc, aby
- w│▒czyµ do niej kod NYS (albo mo┐esz wzi▒µ ju┐ skompilowan▒ wersjΩ
- libc od kogo╢ kto ju┐ j▒ skompilowa│).
-
- Inn▒ r≤┐nic▒ jest to, ┐e "tradycyjny NIS" ma pewn▒ obs│ugΩ NIS
- Netgroups, kt≤rej NYS nie ma. Z drugiej strony NYS pozwala obs│ugiwaµ
- Shadow Passwords w spos≤b przezroczysty. "Tradycyjny NIS" nie
- obs│uguje Shadow passwords przez NIS.
-
- Zapomnij o tym wsyzstkim je╢li u┐ywasz nowej biblioteki GNU C 2.x (aka
- libc6). Ma ona obs│ugΩ NSS (Name Switch Service), co czyni j▒ bardzo
- elastyczn▒ oraz zawiera obs│ugΩ nastΩpuj▒cych map NIS/NIS+: aliases,
- ethers, group, hosts, netgroups, networks, protocols, publickey,
- passwd, rpc, services i shadow. Biblioteka GNU C nie ma ┐adnych
- problem≤w z shadow password przez NIS.
-
-
- 4. Jak to dzia│a.
-
-
-
- 4.1. Jak dzia│a NIS(YP).
-
-
- W ca│ej sieci musi byµ przynajmniej jedna maszyna dzia│aj▒ca jako
- serwer NIS. Mo┐esz zrobiµ wiΩcej serwer≤w NIS, ka┐dy dla innej
- "domeny" NIS - albo mo┐esz mieµ wsp≤│pracuj▒ce serwery NIS, gdzie
- jeden jest g│≤wnym serwerem NIS (master) a wszystkie inne s▒ tak
- zwanymi slave NIS servers (to znaczy dla pewnej "domeny" NIS!) - albo
- mo┐esz to pomieszaµ.
-
- Serwery slave posiadaj▒ tylko kopiΩ baz danych NIS i otrzymuj▒ te
- kopie od g│≤wnego serwera NIS kiedy tylko robione s▒ jakie╢ zmiany w
- g│≤wnej bazie. W zale┐no╢ci od liczby komputer≤w w twojej sieci,
- mo┐esz zdecydowaµ siΩ na instalacjΩ jednego lub wiΩkszej ilo╢ci
- serwer≤w slave. Kiedy tylko serwer NIS jest unieruchamiany (goes down)
- albo jest zbyt wolny w odpowiedziach na ┐▒dania, klient NIS-a
- pod│▒czony do tego serwera spr≤buje znale╝µ ten, kt≤ry dzia│a albo
- jest szybszy.
-
- Bazy danych NIS s▒ w tak zwanym formacie DBM, pochodz▒cym od baz
- danych ASCII. na przyk│ad, pliki /etc/passwd i /etc/group mog▒ byµ
- bezpo╢rednio zamienione na DBM przy pomocy oprogramowania
- translacyjnego ASCII-na-DBM ("makedbm" - jest on dostarczany wraz z
- serwerem). G│≤wny serwer NIS powinien posiadaµ obie bazy - tak ASCII
- jak i DBM.
-
- Serwery slave zostan▒ powiadomione o ka┐dej zmianie w mapach NIS,
- (poprzez program "yppush") i automatycznie uaktualni▒ owe zmiany, aby
- zsynchronizowaµ swoje bazy danych. Klienci NIS nie musz▒ tego robiµ
- poniewa┐ oni zawsze │▒cz▒ siΩ z serwerem NIS, aby odczytaµ informacje
- zapisane w bazach danych DBM.
-
- Autor klient≤w YP dla Linux-a poinformowa│ nas, ┐e nowszy ypbind
- (ypbind-3.3.tar.gz) jest w stanie pobraµ serwer z pliku
- konfiguracyjnego - przez to nie ma potrzeby rozsy│ania (broadcast)
- (kt≤re jest niebezpieczne z powodu tego, ┐e ka┐dy mo┐e zainstalowaµ
- serwer NIS i odpowiadaµ na rozsy│ane zapytania...)
-
-
- 4.2. Jak dzia│a NIS+.
-
-
- NIS+ to nowa wersja "network information nameservice" z Sun-a.
- NajwiΩksz▒ r≤┐nic▒ pomiΩdzy NIS i NIS+ jest obs│uga kodowania danych i
- autentykacja poprzez bezpieczne RPC w NIS+.
- Model nazewnictwa w NIS+ jest zbudowany w postaci struktury
- drzewiastej. Ka┐dy wΩze│ w drzewie odpowiada objektowi NIS+, kt≤rych
- mamy sze╢µ typ≤w: katalog, pozycja (entry), grupa, do│▒czenie, tablica
- i prywatne.
-
- Katalog NIS+, kt≤ry tworzy podstawΩ przestrzeni nazw w NIS+ nazywa siΩ
- katalogiem "root". S▒ dwa specjalne katalogi NIS+: org_dir i
- groups_dir. Katalog org_dir sk│ada siΩ z wszystkich tablic
- administracyjnych, takich jak passwd, hosts i mail_aliases. Katalog
- groups_dir sk│ada siΩ z grup objekt≤w NIS+, kt≤re u┐ywane s▒ do
- kontroli dostΩpu. Kolekcja org_dir, groups_dir i ich katalog≤w
- nadrzΩdnych to domena NIS+.
-
-
- 5. Portmapper RPC
-
-
- Aby m≤c uruchomiµ jakikolwiek z wymienionych poni┐ej program≤w,
- bΩdziesz musia│ uruchomiµ program /usr/bin/portmap. Niekt≤re
- dystrybucje maj▒ skrypt uruchamiaj▒cy ten demon w plikach startowych
- /etc/rc.d/. Wszystko co musisz zrobiµ, to uaktywniµ go i zrestartowaµ
- komputer. Przeczytaj dokumenctajΩ dostarczon▒ wraz z dystrybucj▒, aby
- siΩ dowiedzieµ jak to zrobiµ.
-
- Portmapper RPC (portmap(8)) jest serwerem, kt≤ry zamienia numery
- programowe RPC na numery port≤w protoko│u TCP/IP (albo UDP/IP). Musi
- byµ on uruchomiony, aby m≤c u┐ywaµ na tej maszynie odwo│a± RPC (co
- w│a╢nie robi oprogramowanie klienta NIS/NIS+) do serwer≤w RPC (takich
- jak serwer NIS czy NIS+). Kiedy serwer RPC jest startowany,
- poinformuje on portmap-a na kt≤rych portach nas│uchuje, i jakimi
- numerami programowymi RPC mo┐e s│u┐yµ. Kiedy klient chce odwo│aµ siΩ
- przez RPC do danego numeru programowego, najpierw skontaktuje siΩ z
- portmap-em na maszynie serwerowej, aby okre╢liµ numer portu, do
- kt≤rego nale┐y wys│aµ pakiety RPC.
-
- Normalnie, standardowe serwery RPC s▒ startowane przez inetd(8), wiΩc
- portmap musi byµ uruchomiony przed inetd-em.
-
- Dla bezpiecze±stwa portmapper potrzebuje serwisu czasu (Time Service).
- Upewnij siΩ czy serwis ten jest w│▒czony w /etc/inetd.conf na
- wszystkich hostach:
-
-
-
- #
- # Time service is used for clock syncronization.
- #
- time stream tcp nowait nobody /usr/sbin/tcpd in.timed
- time dgram udp wait nobody /usr/sbin/tcpd in.timed
-
-
-
-
- WA»NE: Nie zapomnij zresetowaµ (kill -HUP) inetd-a po dokonaniu zmian
- w tym pliku !
-
-
- 6. Czego potrzebujesz, aby ustawiµ NIS?
-
-
-
- 6.1. Sprawd╝ czy jeste╢ serwerem, serwerem slave czy klientem.
-
-
- Aby odpowiedzieµ na to pytanie musisz rozwa┐yµ dwa przypadki:
-
- 1. Twoja maszyna bΩdzie czΩ╢ci▒ sieci z istniej▒cymi serwerami NIS.
-
- 2. Nie masz jeszcze ┐adnego serwera NIS w sieci.
-
- W pierwszym przypadku potrzebujesz tylko program≤w klienta (ypbind,
- ypwhich, ypcat, yppoll, ypmatch). Najwa┐niejszym programem jest
- ypbind. Program ten musi byµ uruchomiony przez ca│y czas, to znaczy
- powinien zawsze pojawiaµ siΩ w li╢cie proces≤w. Jest to tzw. proces-
- demon i musi byµ startowany z plik≤w startowych systemu (np.
- /etc/rc.local, /etc/init.d/nis. /etc/rc.d/init.d/ypbind).
- Jak tylko ypbind jest uruchomiony, tw≤j komputer staje siΩ klientem
- NIS.
-
- W drugim przypadku, je╢li nie masz serwer≤w NIS, to bΩdziesz tak┐e
- potrzebowa│ programu serwera NIS (zwykle zwanego ypserv). Sekcja 8
- opisuje jak ustawiµ serwer NIS na twojej maszynie Linux-owej przy
- pomocy implementacji "ypserv" Petera Erikssona i Thorstena Kukuka.
- Zauwa┐, ┐e od wersji 0.14 implementacja ta obs│uguje koncept master-
- slave om≤wiony w sekcji 4.1.
-
- Jest jeszcze jeden darmowy serwer NIS, zwany "yps", napisany przez
- Tobiasa Rebera w Niemczech, kt≤ry obs│uguje koncept master-slave, ale
- ma inne ograniczenia i nie jest ju┐ wspierany.
-
-
- 6.2. Oprogramowanie.
-
-
- Biblioteka systemowa "/usr/lib/libc.a" (wersja 4.4.2 i nowsza) czy
- biblioteka dzielona "/lib/libc.so.x" zawieraj▒ wszystkie odwo│ania
- systemowe niezbΩdne do skompilowania oprogramowania klienta i serwera
- NIS. Do biblioteki glibc 2.x, potrzebujesz tak┐e biblioteki
- /lib/libnsl.so.1.
-
- Niekt≤rzy podawali, ┐e NIS dzia│a tylko z "/usr/lib/libc.a" w wersji
- 4.5.21 i nowszej, wiΩc je╢li chcesz byµ zabezpieczony, to nie u┐ywaj
- starszych bibliotek. Oprogramowanie klienckie NIS mo┐na znale╝µ w:
-
-
-
- Adres Katalog Nazwa Pliku
-
-
- ftp.kernel.org /pub/linux/utils/net/NIS yp-tools-2.0.tar.gz
- ftp.kernel.org /pub/linux/utils/net/NIS ypbind-mt-1.2.tar.gz
- ftp.kernel.org /pub/linux/utils/net/NIS ypbind-3.3.tar.gz
- sunsite.unc.edu /pub/Linux/system/Network/admin yp-clients-2.2.tar.gz
- ftp.uni-paderborn.de /linux/local/yp yp-clients-2.2.tar.gz
- ftp.uni-paderborn.de /linux/local/yp ypbind-3.3.tar.gz
- ftp.icm.edu.pl /pub/Linux/sunsite/system/network/admin yp-clients-2.2.tar.gz
-
-
-
-
- [Od t│umacza: Je╢li jeste╢ w Polsce, to u┐yj raczej tego ostatniego
- adresu.]
-
- Jak ju┐ masz oprogramowanie, postΩpuj zgodnie z instrukcjami
- przychodz▒cymi wraz z nim. yp-clients 2.2 nadaje siΩ do u┐ytku z libc4
- i libc5 a┐ do 5.4.20. libc 5.4.21 i glibc 2.x potrzebuj▒ yp-tools
- 1.4.1. Nowe yp-tools 2.0 bΩd▒ dzia│▒µ z ka┐d▒ bibliotek▒ libc dla
- Linux-a. Poniewa┐ by│y pewne b│Ωdy w kodzie NIS-a nie powiniene╢
- u┐ywaµ libc 5.4.21-35. W zamian u┐yj 5.4.36 lub nowszej, inaczej
- wiΩkszo╢µ program≤w YP nie bΩdzie dzia│a│a. ypbind 3.3 bΩdzie dzia│aµ
- tak┐e ze wszystkimi bibliotekami. Nie powiniene╢ nigdy u┐ywaµ ypbind z
- yp-clients 2.2.
- 6.3. Demon ypbind.
-
-
- Zak│adaj▒c, ┐e uda│o ci siΩ skompilowaµ oprogramowanie jeste╢ gotowy
- do zainstalowania go. Odpowiednim miejscem dla demona ypbind bΩdzie
- /usr/sbin. Niekt≤rzy mog▒ ci m≤wiµ, ┐e nie potrzebujesz ypbind w
- systemie z NYS. Jest to b│Ωdne, gdy┐ ypwhich i ypcat potrzebuj▒ go.
-
- BΩdziesz to oczywi╢cie musia│ zrobiµ jako root. Inne programy
- (ypwhich, ypcat, yppoll, ypmatch) powinny znale╝µ siΩ w katalogu
- dostΩpnym dla wszystkich u┐ytkownik≤w, zwykle /usr/bin.
-
- Proces ypbind posiada plik konfiguracyjny - /etc/yp.conf. Mo┐esz tam
- na sta│e wpisaµ serwer NIS - wiΩcej informacji w podrΩczniku
- systemowym - man ypbind(8).
- Potrzebujesz tego pliku tak┐e do NYS. Przyk│ad:
-
-
-
- ypserver voyager
- ypserver ds9
-
-
-
-
- Je╢li system m≤g│by rozwin▒µ nazwΩ bez NIS, to m≤g│by╢ u┐yµ tej nazwy.
- W przeciwnym wypadku musisz u┐yµ adresu IP.
-
- Dobrym pomys│em bΩdzie przetestowanie ypbind przed wprowadzeniem go do
- plik≤w /etc/rc.d/. Aby to zrobiµ postΩpuj tak:
-
-
- ╖ Upewnij siΩ, ┐e masz ustawion▒ nazwΩ domeny. Je╢li nie, to wydaj
- polecenie:
-
-
-
- /bin/domainname domena.nis
-
-
-
-
-
- gdzie domena.nis powinno byµ jakim╢ │a±cuchem zwykle _NIE_ zwi▒zanym z
- nazw▒ domeny twojej maszyny! Powodem tego jest, to ┐e zewnΩtrznym
- w│amywaczom jest wtedy trochΩ trudniej zdobyµ bazΩ danych z has│ami z
- twojego serwera NIS. Je╢li nie wiesz jaka jest nazwa domeny NIS w two¡
- jej sieci, to zapytaj swojego administratora.
-
-
- ╖ uruchom "/usr/bin/portmap" je╢li nie jest jeszcze uruchomiony.
-
- ╖ stw≤rz katalog "/var/yp" je╢li go nie ma.
-
- ╖ uruchom "/usr/bin/ypbind"
-
- ╖ u┐yj polecenia "rpcinfo -p localhost", aby sprawdziµ czy ypbind
- zarejestrowa│ sw≤j serwis u portmapper-a. rpcinfo powinien pokazaµ
- co╢ takiego:
-
-
-
-
-
-
-
- program vers proto port
- 100000 2 tcp 111 portmapper
- 100000 2 udp 111 portmapper
- 100007 2 udp 637 ypbind
- 100007 2 tcp 639 ypbind
- 300019 1 udp 660
-
-
-
-
-
- ╖ mo┐esz tak┐e uruchomiµ "rpcinfo -u localhost ypbind". Polecenie to
- powinno daµ mniej wiΩcej taki wynik:
-
-
-
- program 100007 version 2 ready and waiting
-
-
-
-
-
- W tym momencie powiniene╢ m≤c u┐ywaµ program≤w klienckich NIS takich
- jak ypcat itp... Na przyk│ad "ypcat passwd" poda ci ca│▒ bazΩ danych
- NIS z has│ami.
-
- WA»NE: Je╢li pomin▒│e╢ test, to upewnij siΩ, ┐e ustawi│e╢ nazwΩ domeny
- i stworzy│e╢ katalog:
-
-
-
- /var/yp
-
-
-
-
- Ten katalog MUSI istnieµ, aby ypbind poprawnie siΩ uruchomi│.
-
- Aby sprawdziµ czy nazwa domeny zosta│a ustawiona poprawnie u┐yj
- programu /bin/ypdomainname z pakietu yp-tools 2.0. U┐ywa on funkcji
- yp_get_default_domain, kt≤ra jest bardziej restrykcyjna. na przyk│ad
- nie pozwala na domenΩ "(none)", kt≤ra jest domy╢ln▒ w Linux-ie. i
- stwarza wiele k│opot≤w.
-
- Je╢li test siΩ powi≤d│ mo┐esz tera┐ zmodyfikowaµ pliki w /etc/rc.d/ w
- twoim systemie, tak ┐eby ypbind startowa│ podczas startu systemu.
- Upewnij siΩ, ┐e nazwa domeny jest ustawiana podczas startu.
-
- C≤┐, to wszystko. Zresetuj komputer i obserwuj komunikaty podczas
- startu, ┐eby zobaczyµ czy ypbind w│a╢ciwie wystartowa│.
-
-
- 6.4. Ustawianie kilenta NIS przy u┐yciu Tradycyjnego NIS-a.
-
-
- Do sprawdzania nazw musisz ustawiµ (albo dodaµ) "nis", do linii
- kolejno╢ci sprawdzania w pliku /etc/host.conf. Przeczytaj stronΩ
- podrΩcznika systemowego "resolv+.8", aby dowiedzieµ siΩ wiΩcej
- szczeg≤│≤w.
-
- Na maszynach klienckich dodaj nastΩpuj▒c▒ liniΩ w /etc/passwd:
-
-
-
- +::::::
-
- Mo┐esz tak┐e u┐yµ znaczk≤w +/-, aby w│▒czyµ/wy│▒czyµ lub zmieniµ
- u┐ytkownik≤w. Je╢li chcesz wy│▒czyµ u┐ytkownika guest dodaj -guest do
- swojego pliku /etc/passwd. Chcesz u┐yµ innej pow│oki (np. ksh) dla
- u┐ytkownika "linux"? Nie ma problemu, po prostu dodaj do swojego
- /etc/passwd "+linux::::::/bin/ksh" (bez cudzys│owi≤w). Pola, kt≤rych
- nie chcesz zmieniaµ musz▒ pozostaµ puste. M≤g│by╢ tak┐e u┐yµ Netgroups
- do kontroli u┐ytkownik≤w.
-
- Na przyk│ad, aby pozwoliµ miquels, dth, ed i wszystkim cz│onkom grupy
- sieciowej sysadmin tylko na login, ale ┐eby dane o kontach wszystkich
- innych u┐ytkownik≤w by│y dostΩpne:
-
-
-
- +miquels:::::::
- +ed:::::::
- +dth:::::::
- +@sysadmins:::::::
- -ftp
- +:*::::::/etc/NoShell
-
-
-
-
- Zauwa┐, ┐e na Linux-ie mo┐esz tak┐e zmieniµ pole z has│em, jak to
- zrobili╢my w tym przyk│adzie. UsunΩli╢my tak┐e login "ftp", tak wiΩc
- nie jest on ju┐ znany i anonimowe ftp nie bΩdzie dzia│aµ.
-
- Netgroup wygl▒da│oby tak:
-
-
-
- sysadmins (-,software,) (-,kukuk,)
-
-
-
-
- WA»NE: Zauwa┐, ┐e cecha netgroup jest zaimplementowana pocz▒wszy od
- libc 4.5.26. Ale je╢li masz wersjΩ biblioteki wcze╢niejsz▒ ni┐ 4.5.26,
- ka┐dy u┐ytkownik w bazie danych z has│ami ma dostΩp do twojego Linux-a
- je╢li masz uruchomiony "ypbind".
-
-
- 6.5. Ustawianie klienta NIS u┐ywaj▒c NYS.
-
-
- Wszystko co jest potrzebne, to to, ┐eby plik konfiguracyjny
- (/etc/yp.conf) wskazywa│ na poprawn-y/e serwer(y). Tak┐e plik
- konfiguracyjny Name Service Switch (/etc/nsswitch.conf) musi byµ
- poprawnie ustawiony.
-
- Powiniene╢ zainstalowaµ ypbind. Nie jest on potrzebny dla libc, ale
- narzΩdzia NIS(YP) go potrzebuj▒.
-
- Je╢li chcesz u┐ywaµ cechy w│▒czania/wy│▒czania u┐ytkownika
- (+/-guest/+@admins), musisz u┐yµ "passwd: compat" i "group: compat" !
- W tym przypadku musisz u┐yµ "shadow: files nis"
-
- ¼r≤d│a NYS s▒ czΩ╢ci▒ ╝r≤de│ libc 5. Kiedy uruchamiasz configure, za
- pierwszym razem odpowiedz "NO" na pytanie "Values correct", potem
- odpowiedz "YES", na "Build a NYS libc from nys".
-
-
-
-
-
- 6.6. Ustawianie klienta NIS u┐ywaj▒c glibc 2.x
-
-
- Glibc u┐ywa "tradycyjnego NIS", tak wiΩc musisz uruchomiµ ypbind. Plik
- konfiguracyjny Name Service Switch (/etc/nsswitch.conf) musi byµ
- poprawnie ustawiony. Je╢li u┐ywasz trybu kompatybilnego z passwd,
- shadow czy group, musisz dodaµ "+" na ko±cu tego pliku, i mo┐esz
- u┐ywaµ cechy w│▒czania/wy│▒czania u┐ytkownika. Konfiguracja jest
- dok│adnie taka sama jak pod Solaris-em 2.x.
-
-
- 6.7. Plik nsswitch.conf
-
-
- Plik /etc/nsswitch.conf okre╢la kolejno╢µ w jakiej odbywa siΩ
- sprawdzanie kiedy pojawi siΩ ┐▒danie pewnej informacji, tak samo jak
- plik /etc/host.conf, kt≤ry okre╢la kolejno╢µ sprawdzania adres≤w
- host≤w. Na przyk│ad linia:
-
-
-
- hosts: files nis dns
-
-
-
-
- okre╢la, ┐e funkcje sprawdzania adres≤w host≤w powinny najpierw szukaµ
- w lokalnym pliku /etc/hosts, potem w bazie NIS i na ko±cu w DNS-ie
- (/etc/resolv.conf i named), gdzie je╢li nie znaleziono odpowiedzi
- pojawia siΩ b│▒d.
-
- Poprawny plik /etc/nsswitch.conf dla NIS:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- #
- # /etc/nsswitch.conf
- #
- # An example Name Service Switch config file. This file should be
- # sorted with the most-used services at the beginning.
- #
- # Pozycja '[NOTFOUND=return]' oznacza, ┐e poszukiwania powinny
- # zako±czyµ siΩ, je╢li poszukiwania w poprzedniej pozycji nic nie
- # da│y. Zauwa┐, ┐e je╢li poszukiwania nie powiod│y siΩ z
- # jakich╢ innych powod≤w (jak nie odpowiadaj▒cy serwer NIS), to
- # poszukiwania s▒ kontynuowane z nastΩpn▒ pozycj▒.
- #
- # Poprawne pozycje to:
- #
- # nisplus Use NIS+ (NIS version 3)
- # nis Use NIS (NIS version 2), also called YP
- # dns Use DNS (Domain Name Service)
- # files Use the local files
- # db Use the /var/db databases
- # [NOTFOUND=return] Stop searching if not found so far
- #
-
- passwd: compat
- group: compat
- shadow: compat
-
- passwd_compat: nis
- group_compat: nis
- shadow_compat: nis
-
- hosts: nis files dns
-
- services: nis [NOTFOUND=return] files
- networks: nis [NOTFOUND=return] files
- protocols: nis [NOTFOUND=return] files
- rpc: nis [NOTFOUND=return] files
- ethers: nis [NOTFOUND=return] files
- netmasks: nis [NOTFOUND=return] files
- netgroup: nis
- bootparams: nis [NOTFOUND=return] files
- publickey: nis [NOTFOUND=return] files
- automount: files
- aliases: nis [NOTFOUND=return] files
-
-
-
-
- passwd_compat, group_compat i shadow_compat s▒ obs│ugiwane tylko przez
- glibc 2.x. Je╢li nie ma zasad (rules) shadow w /etc/nsswitch.conf,
- glibc u┐yje zasady (rule) passwd do sprawdzenia. Jest wiΩcej modu│≤w
- szukania dla glibc jak hesoid. WiΩcej informacji znajdziesz w
- dokumentacji glibc.
-
-
- 7. Shadow Passwords z NIS i PAM.
-
-
- Shadow passwords przez NIS to zawsze z│y pomys│. Straci│e╢ ochronΩ,
- kt≤r▒ daje shadow passwords. Dobrym pomys│em na unikniΩcie przesy│ania
- shadow paswords przez NIS jest umie╢ciµ tylko u┐ytkownik≤w lokalnego
- systemu do pliku /etc/shadow. Usu± pozycje dotycz▒ce u┐ytkownik≤w NIS
- z bazy shadow i umie╢µ has│o spowrotem w passwd. Tak ┐e mo┐esz u┐ywaµ
- shadow dla logowania siΩ jako root i normalnych hase│ dla u┐ytkownik≤w
- NIS. Ma to tΩ zaletΩ, ┐e bΩdzie to dzia│a│o z ka┐dym klientem NIS.
-
-
- Je╢li nie jest to opcja dla ciebie, to potrzebujesz biblioteki GNU
- libc 2.x. Jest to jedyna biblioteka libc dla Linux-a, kt≤ra obs│uguje
- shadow passwords przez NIS. Libc5 nie obs│uguje tego. Libc 5 dla
- Linux-a skompilowana z w│▒czonym NYS ma trochΩ kodu do tego. Ale jest
- on z│y w niekt≤rych przypadkach i nie dzia│a ze wszystkimi poprawnymi
- pozycjami shadow.
-
- Kolejnym problemem jest PAM. Biblioteka GNU C obs│uguje Shadow
- paswords przez NIS, ale PAM nie, szczeg≤lnie pam_pwdb/libpwdb. Jest to
- powa┐ny problem dla u┐ytkownik≤w RedHat 5.x. Je╢li masz glibc i PAM,
- to musisz zmieniµ pozycje w /etc/pam.d/*. Zamie± wszystkie zasady dla
- pam_pwdb na (through) modu│y pam_auth_unix_*. BΩdzie to dzia│aµ.
-
-
- 8. Czego potrzebujesz do ustawienia NIS+?
-
-
-
- 8.1. Oprogramowanie.
-
-
- Klient dla NIS+ na Linuxa zosta│ napisany dla biblioteki GNU C 2.
- Jest tak┐e wersja dla libc5, poniewa┐ wszystkie komercyjne aplikacje
- s▒ z ni▒ skompilowane i nie mo┐na ich przekompilowaµ z bibliotek▒
- libc5. Z bibliotek▒ t▒ i NIS+ s▒ problemy: Nie m≤g│by╢ do│▒czyµ
- statycznie tej biblioteki do program≤w i programy skompilowane z t▒
- bibliotek▒ nie bΩd▒ dzia│a│y z inn▒.
-
- Musisz ╢ci▒gn▒µ i skompilowaµ najnowsz▒ bibliotekΩ GNU C 2 snapshot.
- Potrzebujesz tak┐e systemu opartego na glibc jak RedHat Mustang czy
- niestabilny Debian. Ale ostrzegamy: To wszystko jest w fazie beta !
- Przeczytaj dokumentacjΩ na temat glibc snapshots i z dystrybucji !
- glibc 2.0.x nie ma obs│ugi NIS+ i nigdy nie bΩdzie. Pierwsz▒
- publicznie dostΩpn▒ wersj▒ zawieraj▒c▒ obs│ugΩ NIS+ bΩdzie 2.1.
-
- Oprogramowanie klienckie NIS+ mo┐na pobraµ z:
-
-
-
- Adres Katalog Nazwa Pliku
-
- ftp.kernel.org /pub/software/libs/glibc libc-*, glibc-crypt-*,
- glibc-linuxthreads-*,
- ftp.kernel.org /pub/linux/utils/net/NIS+ nis-tools-1.4.2.tar.gz
- ftp.kernel.org /pub/linux/utils/net/NIS+ pam_keylogin-1.2.tar.gz
-
-
-
-
- Dystrybucje oparte na glibc mo┐na ╢ci▒gn▒µ z:
-
-
-
- Adres Katalog
-
- ftp.redhat.com /pub/redaht/redhat-5.1
- ftp.debian.org /pub/debian/dists/hamm
- ftp.icm.edu.pl /pub/Linux/redhat
- ftp.icm.edu.pl /pub/Linux/debian
-
-
-
-
-
- [Od t│umacza: Je╢li jeste╢ w Polsce, to u┐yj dw≤ch ostatnich adres≤w.]
-
- Aby skompilowaµ bibliotekΩ GNU C postΩpuj zgodnie z instrukcjami
- do│▒czonymi do niej. Tutaj mo┐esz znale╝µ za│atan▒ libc5, opart▒ o
- ╝r≤d│a NYS i glibc zamiast standardowej libc5:
-
-
-
- Adres Katalog Nazwa Pliku
- ftp.kernel.org /pub/linux/utils/net/NIS+ libc-5.4.44-nsl-0.4.10.tar.gz
-
-
-
-
- Powiniene╢ tak┐e zajrzeµ do http://www-vt.uni-
- paderborn.de/~kukuk/linux/nisplus.html <http://www-vt.uni-
- paderborn.de/~kukuk/linux/nisplus.html>, aby zdobyµ wiΩcej informacji
- i najnowsze ╝r≤d│a.
-
-
- 8.2. Ustawianie klienta NIS+.
-
-
- WA»NE: Aby ustawiµ klienta NIS+, przeczytaj dokumenctajΩ do NIS+ na
- Solaris-a, aby siΩ dowiedzieµ co zrobiµ po stronie serwera ! Dokument
- ten opisuje tylko co zrobiµ po stronie klienta !
-
- Po zainstalowaniu nowej biblioteki libc i nis-tools stw≤rz listy
- uwierzytelniaj▒ce dla nowego klienta na serwerze NIS+. Upewnij siΩ, ┐e
- dzia│a portmap. Potem sprawd╝ czy na twoim Linux-ie jest ten sam czas
- co na serwerze. W bezpiecznym RPC masz tylko 3 minuty, w ci▒gu kt≤rych
- listy uwierzytelniaj▒ce s▒ aktualne. Dobrym pomys│em jest uruchomienie
- na wszystkich hostach xntpd. Potem uruchom
-
-
-
- domainname domena.nisplus
- nisinit -c -H <serwer NIS+>
-
-
-
-
- aby zainicjalizowaµ zimny Start File. Przeczytaj stronΩ podrΩcznika
- systemowego o nisinit i znajd╝ jego opcje. Upewnij siΩ, ┐e nazwa
- domeny bΩdzie zawsze ustawiona po resecie. Je╢li nie wiesz jaka jest
- nazwa domeny w twojej sieci, zapytaj administratora.
-
- Teraz powiniene╢ zmieniµ sw≤j plik konfiguracyjny /etc/nsswitch.conf.
- Upewnij siΩ, ┐e jedynym serwisem po publickey jest nisplus
- ("publickey: nisplus") i nic wiΩcej !
-
- Potem uruchom keyserv i uruchamiaj go zawsze po starcie. Uruchom:
-
-
-
- keylogin -r
-
-
-
-
- aby zapisaµ tajny klucz (secretkey) root-a na twoim systemie. (Mam
- nadziejΩ, ┐e doda│e╢ klucz publiczny dla nowego hosta na serwerze NIS+
- ?).
-
- "niscat passwd.org_dir" powinno pokazaµ ci teraz wszystkie pozycje w
- bazie danych z has│ami.
-
-
- 8.3. NIS+, keylogin, login i PAM.
-
-
- Kiedy u┐ytkownik siΩ loguje musi ustawiµ sw≤j tajny klucz dla keyserv-
- a. Robi siΩ to przez wywo│anie "keylogin". Login z pakietu shadow
- zrobi to za u┐ytkownika. W przypadku login-u PAM musisz zainstalowaµ
- pam_keylogin-1.0.tar.gz i zmodyfikowaµ plik /etc/pam.d/login, tak aby
- u┐ywa│ pam_unix_auth, a nie pwdb, kt≤re nie obs│uguje NIS+. Na
- przyk│ad:
-
-
-
- #%PAM-1.0
- auth required /lib/security/pam_securetty.so
- auth required /lib/security/pam_keylogin.so
- auth required /lib/security/pam_unix_auth.so
- auth required /lib/security/pam_nologin.so
- account required /lib/security/pam_unix_acct.so
- password required /lib/security/pam_unix_passwd.so
- session required /lib/security/pam_unix_session.so
-
-
-
-
-
- 8.4. Plik nsswitch.conf.
-
-
- Plik /etc/nsswitch.conf okre╢la kolejno╢µ w jakiej odbywa siΩ
- sprawdzanie kiedy pojawi siΩ ┐▒danie pewnej informacji, tak samo jak
- plik /etc/host.conf, kt≤ry okre╢la kolejno╢µ sprawdzania adres≤w
- host≤w. Na przyk│ad linia:
-
-
-
- hosts: files nis dns
-
-
-
-
- okre╢la, ┐e funkcje sprawdzania adres≤w host≤w powinny najpierw szukaµ
- w lokalnym pliku /etc/hosts, potem w bazie NIS i na ko±cu w DNS-ie
- (/etc/resolv.conf i named), gdzie je╢li nie znaleziono odpowiedzi, to
- zwracany jest b│▒d.
-
- Poprawny plik /etc/nsswitch.conf dla NIS:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- #
- # /etc/nsswitch.conf
- #
- # An example Name Service Switch config file. This file should be
- # sorted with the most-used services at the beginning.
- #
- # Pozycja '[NOTFOUND=return]' oznacza, ┐e poszukiwania powinny
- # zako±czyµ siΩ, je╢li poszukiwania w poprzedniej pozcyji nic nie
- # da│y. Zauwa┐, ┐e je╢li poszukiwania nie powiod│y siΩ z
- # jakich╢ innych powod≤w (jak nie odpowiadaj▒cy serwer NIS), to
- # poszukiwania s▒ kontynuowane z nastΩpn▒ pozycj▒.
- #
- # Poprawne pozycje to:
- #
- # nisplus Use NIS+ (NIS version 3)
- # nis Use NIS (NIS version 2), also called YP
- # dns Use DNS (Domain Name Service)
- # files Use the local files
- # db Use the /var/db databases
- # [NOTFOUND=return] Stop searching if not found so far
- #
-
- passwd: compat
- # dla libc5: passwd: files nisplus
- group: compat
- # dla libc5: group: files nisplus
- shadow: compat
- # dla libc5: shadow: files nisplus
-
- passwd_compat: nisplus
- group_compat: nisplus
- shadow_compat: nisplus
-
- hosts: nisplus files dns
-
- services: nisplus [NOTFOUND=return] files
- networks: nisplus [NOTFOUND=return] files
- protocols: nisplus [NOTFOUND=return] files
- rpc: nisplus [NOTFOUND=return] files
- ethers: nisplus [NOTFOUND=return] files
- netmasks: nisplus [NOTFOUND=return] files
- netgroup: nisplus
- bootparams: nisplus [NOTFOUND=return] files
- publickey: nisplus [NOTFOUND=return] files
- automount: files
- aliases: nisplus [NOTFOUND=return] files
-
-
-
-
-
- 9. Ustawianie serwera NIS.
-
-
-
- 9.1. Program ypserv.
-
-
- Dokument ten opisuje tylko jak ustawiµ serwer NIS oparty na "ypserv".
-
- Oprogramowanie serwera NIS mo┐na znale╝µ na:
-
-
-
-
-
- Adres Katatlog Nazwa pliku
- ftp.kernel.org /pub/linux/utils/net/NIS ypserv-1.3.2.tar.gz
- waaug.erols.com /pub/net/nis ypserv-1.3.2.tar.gz
-
-
-
-
- Mo┐esz tak┐e zajrzeµ do http://www-vt.uni-
- paderborn.de/~kukuk/linux/nis.html <http://www-vt.uni-
- paderborn.de/~kukuk/linux/nis.html> po wiΩcej informacji i najnowsze
- ╝r≤d│a.
-
- Ustawianie serwera jest takie samo dla tradycyjnego NIS i NYS.
-
- Skompiluj oprogramowanie, aby wygenerowaµ programy "ypserv" i
- "makedbm". Je╢li uruchamiasz sw≤j serwer jako g│≤wny, okre╢l jakie
- pliki maj▒ byµ dostΩpne przez NIS i wtedy dodaj lub usu± odpowiednie
- pozycje w /var/yp/Makefile.
-
- PomiΩdzy ypserv 1.1 a 1.2 by│a jedna du┐a zmiana. Od wersji 1.2,
- ypserv "keszuje" uchwyty plik≤w (file handles). Oznacza to, ┐e zawsze
- kiedy stworzysz now▒ mapΩ musisz wywo│aµ makedbm z opcj▒ -c. Upewnij
- siΩ, ┐e u┐ywasz nowego /var/yp/Makefile z ypserv 1.2 lub nowszego,
- albo dodaj opcjΩ -c do makedbm w pliku Makefile. je╢li tego nie
- zrobisz, ypserv bΩdzie wci▒┐ u┐ywa│ starych map zamiast nowych.
-
- Teraz zmodyfikuj /var/yp/securenets i /etc/ypserv.conf.
- WiΩcej informacji na stronach podrΩcznika man o ypserv(8) i
- ypserv.conf(5).
-
- Upewnij siΩ czy portmapper (portmap(8)) jest uruchomiony i uruchom
- serwer "ypserv". Polecenie:
-
-
-
- % rpcinfo -u localhost ypserv
-
-
-
-
- powinno pokazaµ co╢ takiego:
-
-
-
- program 100004 version 2 ready and waiting
-
-
-
-
- Teraz wygeneruj bazΩ danych NIS (YP). Na serwerze g│≤wnym uruchom:
-
-
-
- % /usr/lib/yp/ypinit -m
-
-
-
-
- na slave upewnij siΩ, ┐e dzia│a ypwhich -m. Potem uruchom
-
-
-
- % /usr/lib/yp/ypinit -s masterhost
-
-
-
- To wszystko, tw≤j serwer ju┐ dzia│a.
-
- Je╢li masz wiΩksze problemy, mo┐esz wystartowaµ ypserv i ypbind i
- trybie ╢ledzenia (debug) w innym oknie. Komunikaty pojawiaj▒ce siΩ w
- tym trybie powinny ci powiedzieµ co jest nie tak.
-
- Mo┐esz zmodyfikowaµ crontab root-a *na serwerze slave* i dodaµ
- poni┐sze linie:
-
-
-
- 20 * * * * /usr/lib/yp/ypxfr_1perhour
- 40 6 * * * /usr/lib/yp/ypxfr_1perday
- 55 6,18 * * * /usr/lib/yp/ypxfr_2perday
-
-
-
-
- To upewni nas, ┐e mapy NIS s▒ aktualne, nawet je╢li jakie╢
- uaktualnienie zosta│o przeoczone z powodu np. wy│▒czenia serwera slave
- podczas modyfikowania bazy g│≤wnej.
-
- Serwer slave m≤g│by╢ dodaµ kiedykolwiek p≤╝niej. Najpierw upenij siΩ,
- ┐e nowy ypserv ma pozwolenie na kontaktowanie siΩ z masterem NIS.
- Potem uruchom
-
-
-
- % /usr/lib/yp/ypinit -s masterhost
-
-
-
-
- na nowym slavie i dodaj nazwΩ serwera do pliku /var/yp/ypservers.
- Potem uruchom make w /var/yp, aby uaktualniµ mapy.
-
- Je╢li chcesz ograniczyµ dostΩp do twojego serwera NIS bΩdziesz musia│
- ustawiµ serwer NIS tak┐e jako klienta przez uruchomienie ypbind i
- dodanie pozycji + do /etc/passwd _w po│owie_ (halfway) pliku z
- has│ami. Funkcje biblioteczne zignoruj▒ wszystkie normalne pozycje po
- pierwszej pozycji NIS i i resztΩ informacji zdobΩd▒ przez NIS.W ten
- spos≤b obs│ugiwany jest dostΩp NIS. Przyk│ad:
-
-
-
- root:x:0:0:root:/root:/bin/bash
- daemon:*:1:1:daemon:/usr/sbin:
- bin:*:2:2:bin:/bin:
- sys:*:3:3:sys:/dev:
- sync:*:4:100:sync:/bin:/bin/sync
- games:*:5:100:games:/usr/games:
- man:*:6:100:man:/var/catman:
- lp:*:7:7:lp:/var/spool/lpd:
- mail:*:8:8:mail:/var/spool/mail:
- news:*:9:9:news:/var/spool/news:
- uucp:*:10:50:uucp:/var/spool/uucp:
- nobody:*:65534:65534:noone at all,,,,:/dev/null:
- +miquels::::::
- +:*:::::/etc/NoShell
- [ PO tej linii normalni u┐ytkownicy ! ]
- tester:*:299:10:Just a test account:/tmp:
- miquels:1234567890123:101:10:Miquel van Smoorenburg:/home/miquels:/bin/zsh
-
-
-
-
- U┐ytkownik tester bΩdzie istnia│, ale bΩdzie mia│ ustawion▒ pow│okΩ na
- /etc/NoShell. miquels bΩdzie mia│ normalny dostΩp.
-
- Alternatywnie m≤g│by╢ zmodyfikowaµ plik /var/yp/Makefile i ustawiµ
- NIS, tak ┐eby u┐ywa│ innego ╝r≤d│owego pliku z has│ami. W du┐ych
- systemach NIS-owe pliki z has│ami i grupami znajduj▒ siΩ zwykle w
- /var/yp/ypfiles/. Je╢li tak zrobisz, to zwyk│e narzΩdzia jak "passwd",
- "chfn", "adduser" nie bΩd▒ ju┐ dzia│aµ i bΩdziesz potrzebowa│
- specjalnych w│asnorΩcznie zrobionych wersji.
-
- Chocia┐ yppsswd, ypchsh i ypchfn bΩd▒ oczywi╢cie dzia│aµ.
-
-
- 9.2. Program serwera yps.
-
-
- Aby ustawiµ serwer NIS "yps" przeczytaj poprzedni paragraf. Ustawianie
- serwera "yps" jest podobne, _ale_ nie dok│adnie takie samo, wiΩc
- uwa┐aj jak bΩdziesz stosowa│ instrukcje dla "ypserv-a" do "yps" !
- "yps" nie jest wspierany przez ┐adnego autora i zawiera parΩ dziur w
- bezpiecze±stwie. W│a╢ciwie nie powiniene╢ go u┐ywaµ !
-
- Oprogramowane do serwera NIS "yps" mo┐na znale╝µ na:
-
-
-
- Adres Katalog Nazwa pliku
-
- ftp.lysator.liu.se /pub/NYS/servers yps-0.21.tar.gz
-
-
-
-
-
- 9.3. Program rpc.yppasswdd
-
-
- Kiedy u┐ytkownicy zmieniaj▒ swoje has│a, baza danych NIS z has│ami i
- przypuszczalnie inne bazy danych NIS, kt≤re zale┐▒ od bazy danych z
- has│ami, powinny byµ uaktualnione. Program "rpc.yppasswdd" jest
- serwerem, kt≤ry odpowiedzialny jest za zmiany hase│ i uaktualnianie
- baz danych NIS. rpc.yppasswdd jest zintegrowany z ypserv. Nie
- potrzebujesz starszych oddzielnych yppasswd-0.9.tar.gz czy
- yppasswd-0.10.tar.gz i nie powiniene╢ ich ju┐ u┐ywaµ. rpc.yppasswdd z
- ypserv 1.3.2 ma pe│n▒ obs│ugΩ shadow. yppasswd jest teraz czΩ╢ci▒ yp-
- tool-.2.0.tar.gz.
-
- Musisz uruchomiµ rpc.yppaswdd tylko na serwerze NIS master. Domy╢lnie
- u┐ytkownicy nie maj▒ prawa zmieniaµ swoich "pe│nych nazw" czy pow│oki.
- Mo┐esz na to pozwoliµ opcj▒ -e chfn czy -e chsh.
-
-
- 10. Weryfikacja instalacji NIS/NYS.
-
-
- Je╢li wszystko jest w porz▒dku (jak powinno byµ), powiniene╢ m≤c
- zwersyfikowaµ instalacjΩ kilkoma prostymi poleceniami. Zak│adaj▒c na
- przyk│ad, ┐e tw≤j plik z hs│ami jest dostarczany prze NIS, polecenie
-
-
-
- % ypcat passwd
-
-
-
-
- powinno pokazaµ ci zawarto╢µ pliku z has│ami z NIS. Polecenie
-
-
-
- % ypmatch userid passwd
-
-
-
-
- (gdzie userid jest login-em jakiego╢ u┐ytkownika) powinno pokazaµ ci
- pozycjΩ w pliku z has│ami dotycz▒c▒ tego u┐ytkownika. Programy "ypcat"
- i "ypmatch" powinny byµ zawarte w dystrybucji NIS lub NYS.
-
- Je╢li u┐ytkownik nie m≤g│by sie zalogowaµ, uruchom nastΩpuj▒cy program
- po stronie klienta:
-
-
-
- #include <stdio.h>
- #include <pwd.h>
- #include <sys/types.h>
-
- int
- main(int argc, char *argv[])
- {
- struct passwd *pwd;
-
- if(argc != 2)
- {
- fprintf(stderr,"Stosowanie: getwpnam nazwa-uzytkownika\n");
- exit(1);
- }
-
- pwd=getpwnam(argv[1]);
-
- if(pwd != NULL)
- {
- printf("name.....: [%s]\n",pwd->pw_name);
- printf("password.: [%s]\n",pwd->pw_passwd);
- printf("user id..: [%d]\n", pwd->pw_uid);
- printf("group id.: [%d]\n",pwd->pw_gid);
- printf("gecos....: [%s]\n",pwd->pw_gecos);
- printf("directory: [%s]\n",pwd->pw_dir);
- printf("shell....: [%s]\n",pwd->pw_shell);
- }
- else
- fprintf(stderr,"Nie znaleziono uzytkownika \"%s\"!\n",argv[1]);
-
- exit(0);
- }
-
-
-
-
- Uruchomienie tego programu z u┐ytkownikiem jako parametr, spowoduje
- wy╢wietlenie wszystkich informacji jakie uzyska funkcja getpwnam dla
- tego u┐ytkownika. Powinno ci to pokazaµ, kt≤ra pozycja jest
- niepoprawna. Najpopularniejszym problemem jest zapisanie "*" w polu
- has│a.
-
-
- 11. Popularne problemy i rozwi▒zywanie ich.
-
-
-
-
- 1. Biblioteki do 4.5.19 s▒ niepoprawne. NIS nie bΩdzie z nimi
- wsp≤│pracowa│.
-
- 2. Je╢li uaktualnisz biblioteki z 4.5.19 na 4.5.24, to polecenie su
- nie dzia│a. Potrzebujesz tego polecenia ze Slackware 1.2.0.
- Przypadkowo tam mo┐esz znale╝µ uaktulanione biblioteki.
-
- 3. M≤g│by╢ popa╢µ w k│opoty z NIS-em i DNS-em na tej samej maszynie
- u┐ywaj▒c starej dystrybucji z formatem binari≤w a.out. Serwer DNS
- czasami nie uruchomi NIS.
-
- 4. Kiedy serwer NIS siΩ wy│▒czy i potem uruchomi ponownie ypbind
- zaczyna wypisywaµ co╢ takiego:
-
-
- yp_match: clnt_call:
- RPC: Unable to receive; errno = Connection refused
-
-
-
- i u┐ytkownicy zarejestrowani w bazie danych NIS nie mog▒ siΩ zalo¡
- gowaµ. Spr≤buj zalogowaµ siΩ jako root i je╢li ci siΩ uda│o, zabij
- ypbind i uruchom go ponownie. Uaktualnienie do ypbind 3.3 lub nowszego
- tak┐e powinno pom≤c.
-
- 5. Po uaktualnieniu libc do wersji nowszej ni┐ 5.4.20, narzΩdzia YP
- nie bΩd▒ dzia│aµ. Potrzebujesz w takim przypadku yp-tools w wersji
- 1.2 lub nowszej dla libc >= 5.4.21 i glibc 2.x i yp-clients 2.2 dla
- wcze╢niejszych wersji. yp-tools 2.0 powinny dzia│aµ ze qwszystkimi
- bibliotekami.
-
- 6. W libc 5.4.21-35 yp_maplist jest popsute, potrzbujesz 5.4.36 lub
- nowszej wersji, albo niekt≤re programy z YP jak np. ypwich bΩd▒
- przerywaµ dzia│anie z b│Ωdem Segmentation fault.
-
- 7. libc 5 z tradycyjnym NIS nie obs│uguje shadow passwords przez NSI.
- Potrzebujesz libc5 + NYS lub glibc 2.x
-
- 8. ypcat shadow nie pokazuje mapy shadow. Jest to poprawne - nazwa
- mapy shadow to shadow.byname a nie shadow.
-
-
- 12. CzΩsto zadawane pytania.
-
-
- Na wiΩkszo╢µ twoich pyta± powiniene╢ ju┐ uzyskaµ odpowied╝. Je╢li
- wci▒┐ masz jakie╢ pytania bez odpowiedzi to mo┐esz wys│aµ list na
- grupΩ
-
-
-
- comp.os.linux.help
- lub
- comp.os.linux.networking
-
-
-
-
- albo na kt≤r▒╢ z polskich grup
-
-
-
- pl.comp.security
- lub
- pl.comp.os.linux
-
- Albo skontaktuj siΩ z kt≤rym╢ z autor≤w tego HOWTO.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-